package com.treasure.web.service;

import com.treasure.common.enums.SmsUsageEnum;
import com.treasure.common.types.EmailAddress;
import com.treasure.common.types.PhoneNumber;
import com.treasure.common.types.VerifyCode;
import com.treasure.infrastructure.model.po.SmsVerifyCodeInfo;

import java.io.IOException;

/**
 * @author sunhongmin
 * @date 2023/9/13 22:09
 * @description
 */
public interface SmsService {
    void sendVerifyCode(PhoneNumber phoneNumber, SmsUsageEnum smsUsage) throws IOException;

    void sendEmailVerifyCode(String invitationCode, EmailAddress emailAddress, SmsUsageEnum smsUsage) throws IOException;

    SmsVerifyCodeInfo getVerifyInfo(PhoneNumber phoneNumber, VerifyCode verifyCode);
}
